Support ADK generate_content LLM spans#145
Merged
krisztianfekete merged 4 commits intoMay 15, 2026
Merged
Conversation
Contributor
krisztianfekete
left a comment
There was a problem hiding this comment.
Thank you for the PR, @erauner12! I added a couple of comments, but otherwise the direction is great here!
Align ADK LLM span ordering with existing start-time-only extractor conventions. Make missing-LLM conversion diagnostics name call_llm and ADK generate_content compatible span shapes. Trim unreachable inner PascalCase ADK content fallbacks while preserving lower/camelCase function call parsing, and add regression coverage for generate_content functionCall content. Validation: uv run pytest tests/test_extraction.py tests/test_converter.py; uv run pytest -k generate_content
Contributor
Author
|
Let me know if you have any more suggestions! @krisztianfekete |
Contributor
krisztianfekete
left a comment
There was a problem hiding this comment.
Nice, added one last comment, then we are good to go!
Remove unreachable inner Role, Parts, and Text fallbacks from ADK request/response text extraction while preserving outer Contents/Content handling. Add focused coverage for outer PascalCase ADK payload objects with lower-case inner content fields. Validation: uv run pytest tests/test_extraction.py -k 'ExtractUserText or ExtractAgentResponse'; uv run pytest tests/test_extraction.py tests/test_converter.py
Format extraction.py to satisfy CI lint. Validation: uv run ruff check . && uv run ruff format --check .; uv run pytest tests/test_extraction.py tests/test_converter.py
krisztianfekete
approved these changes
May 15, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
call_llm*spans and ADK-payload-bearinggenerate_content*spans.invoke_agent*traces withoutcall_llm*spans can still become ADKInvocationobjects.generate_content*exclusion and add focused extraction/conversion regressions.Validation
uv run pytest -k generate_content— 4 passed, 668 deselecteduv run pytest tests/test_extraction.py tests/test_converter.py tests/test_trace_metrics.py tests/test_runner.py— 144 passednum_invocations: 2conversion_warnings: []tool_trajectory_avg_score: 1.0eval_status: PASSEDllm_calls: 6,tool_calls: 5Notes
Fixes #144